Many new applications are being written in a client/server configuration where execution of the application is split between a client and a server.
In the initial stages of development the developer may test and debug the server part of the application by running it locally. To complete the testing, the server part of the application must be installed and run on the server.
Two problems are typically encountered during testing of the application code on the remote server. First, the developer is required to go to the server machine and use the debugger on the server in order to debug the application code on the server. In a distributed or networked computer environment this is both inconvenient and awkward because the developer is required to interact with two or more machines. In most cases, the machines are not physically located in the same room. Secondly, the developer is first required to manually find the application code in the server executable files running on the server before the debugging operation can be commenced. Typically this involves starting the server machine under the control of the debugger or using the "process attach)" feature of the debugger. Next the developer needs to step through "disassembled" code that is part of the server executables until the application code is located. It will be appreciated that this procedure is time consuming and error prone. With such an arrangement, it is not possible to debug the application code on the server without first stepping through additional server code which interfaces the application to the client machine.
The present invention addresses these shortcomings by providing a system which allows the application code on the server to be debugged remotely.